SQLite একটি লাইটওয়েট, সার্ভারবিহীন, এবং পোর্টেবল ডাটাবেস যা মোবাইল এবং ওয়েব অ্যাপ্লিকেশনগুলোতে ডেটা সংরক্ষণ এবং পরিচালনা করতে ব্যবহৃত হয়। SQLite এর সহজ ব্যবহার, ছোট আকার এবং কম পারফরম্যান্স ওভারহেডের কারণে এটি মোবাইল এবং ওয়েব অ্যাপ্লিকেশনের জন্য খুবই উপযুক্ত। নিচে মোবাইল এবং ওয়েব অ্যাপ্লিকেশনগুলোর জন্য SQLite এর ইন্টিগ্রেশন উদাহরণ দেওয়া হলো।
১. Mobile Application এ SQLite Integration
SQLite মোবাইল অ্যাপ্লিকেশনগুলোতে ডেটা সংরক্ষণের জন্য খুব জনপ্রিয়। বিশেষত Android এবং iOS অ্যাপ্লিকেশনগুলোতে SQLite ব্যবহৃত হয়। এখানে একটি Android অ্যাপ্লিকেশন এর মধ্যে SQLite এর ইন্টিগ্রেশন উদাহরণ দেওয়া হলো।
Android SQLite Integration উদাহরণ
Step 1: SQLiteHelper ক্লাস তৈরি করা
Android অ্যাপ্লিকেশনে SQLite ডাটাবেস পরিচালনা করার জন্য প্রথমে একটি SQLiteOpenHelper ক্লাস তৈরি করতে হবে। এই ক্লাসটি ডাটাবেস তৈরি এবং ম্যানেজমেন্ট করবে।
public class DatabaseHelper extends SQLiteOpenHelper {
private static final String DATABASE_NAME = "mydatabase.db";
private static final int DATABASE_VERSION = 1;
private static final String TABLE_NAME = "users";
public static final String COLUMN_ID = "id";
public static final String COLUMN_NAME = "name";
public static final String COLUMN_EMAIL = "email";
public DatabaseHelper(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
@Override
public void onCreate(SQLiteDatabase db) {
String CREATE_USERS_TABLE = "CREATE TABLE " + TABLE_NAME + " (" +
COLUMN_ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " +
COLUMN_NAME + " TEXT, " +
COLUMN_EMAIL + " TEXT)";
db.execSQL(CREATE_USERS_TABLE);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("DROP TABLE IF EXISTS " + TABLE_NAME);
onCreate(db);
}
// Method to insert a user into the database
public void addUser(String name, String email) {
SQLiteDatabase db = this.getWritableDatabase();
ContentValues values = new ContentValues();
values.put(COLUMN_NAME, name);
values.put(COLUMN_EMAIL, email);
db.insert(TABLE_NAME, null, values);
db.close();
}
// Method to retrieve all users
public Cursor getAllUsers() {
SQLiteDatabase db = this.getReadableDatabase();
return db.query(TABLE_NAME, null, null, null, null, null, null);
}
}
Step 2: SQLite ডাটাবেস ব্যবহার করা
এখন আপনি DatabaseHelper ক্লাস ব্যবহার করে ডেটা ইনসার্ট এবং রিট্রিভ করতে পারবেন।
public class MainActivity extends AppCompatActivity {
private DatabaseHelper dbHelper;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
dbHelper = new DatabaseHelper(this);
// Inserting data
dbHelper.addUser("John Doe", "john.doe@example.com");
// Retrieving data
Cursor cursor = dbHelper.getAllUsers();
if (cursor.moveToFirst()) {
do {
String name = cursor.getString(cursor.getColumnIndex("name"));
String email = cursor.getString(cursor.getColumnIndex("email"));
Log.d("User", "Name: " + name + ", Email: " + email);
} while (cursor.moveToNext());
}
cursor.close();
}
}
এই কোডটি Android অ্যাপ্লিকেশনে SQLite ডাটাবেস তৈরি, ডেটা ইনসার্ট এবং ডেটা রিট্রিভ করার উদাহরণ প্রদান করে।
২. Web Application এ SQLite Integration
SQLite সাধারণত ওয়েব অ্যাপ্লিকেশনে ব্যবহৃত হয় যখন ডাটাবেস সার্ভার বা ক্লাউড সমাধান ব্যবহার করতে না হয় বা সিঙ্গল ইউজার অ্যাপ্লিকেশন থাকে। ওয়েব অ্যাপ্লিকেশনে SQLite ব্যবহার করার জন্য PHP বা Node.js ব্যবহার করা যেতে পারে।
PHP SQLite Integration উদাহরণ
Step 1: SQLite ডাটাবেস তৈরি করা এবং কনফিগার করা
<?php
// Create or open SQLite database
$db = new SQLite3('mydatabase.db');
// Create a table
$query = "CREATE TABLE IF NOT EXISTS users (
id INTEGER PRIMARY KEY AUTOINCREMENT,
name TEXT,
email TEXT
)";
$db->exec($query);
// Insert data
$query = "INSERT INTO users (name, email) VALUES ('John Doe', 'john.doe@example.com')";
$db->exec($query);
// Retrieve data
$result = $db->query('SELECT * FROM users');
while ($row = $result->fetchArray()) {
echo "ID: " . $row['id'] . " Name: " . $row['name'] . " Email: " . $row['email'] . "<br>";
}
$db->close();
?>
Step 2: PHP কোডের মাধ্যমে SQLite ডাটাবেস ব্যবহার করা
এটি PHP এর মাধ্যমে SQLite ডাটাবেসে ডেটা ইনসার্ট এবং রিট্রিভ করার উদাহরণ। এখানে SQLite3 ক্লাস ব্যবহার করে ডাটাবেস তৈরি করা, টেবিল তৈরি করা এবং ডেটা ইনসার্ট ও রিট্রিভ করা হয়েছে।
সারাংশ
Mobile Applications (যেমন Android) এবং Web Applications (যেমন PHP বা Node.js সহ) উভয় ক্ষেত্রে SQLite ইন্টিগ্রেশন খুবই সহজ এবং কার্যকরী। Android অ্যাপ্লিকেশনে, SQLiteOpenHelper ক্লাস ব্যবহার করে ডাটাবেস তৈরি এবং পরিচালনা করা যায়, যেখানে PHP ওয়েব অ্যাপ্লিকেশনে SQLite3 ক্লাস ব্যবহার করে একই কাজ করা হয়। SQLite এর সুবিধা হল এটি কম রিসোর্স নিয়ে কাজ করে এবং ছোট-আকারের অ্যাপ্লিকেশনগুলির জন্য আদর্শ।
Read more